/**
 *  iBizSys 5.0 机器人生产代码（不要直接修改当前代码）
 *  http://www.ibizsys.net
 */
package com.sa.ibiz.demo.srv.demo.entity;


import java.io.Serializable;
import java.util.HashMap;
import java.util.ArrayList;

import javax.persistence.Column;

import java.sql.Timestamp;
import net.ibizsys.paas.data.IDataObject;
import net.ibizsys.paas.data.DataObject;
import net.ibizsys.paas.util.StringHelper;
import net.sf.json.JSONObject;
import net.ibizsys.paas.util.JSONObjectHelper;
import net.ibizsys.paas.xml.XmlNode;
import net.ibizsys.paas.service.ServiceGlobal;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;


/**
 * 实体[IBZ5ORDERDETAIL] 数据对象
 */
public class IBZ5ORDERDETAIL extends net.ibizsys.paas.entity.EntityBase implements Serializable {

    private static final long serialVersionUID = -1L;
    private static final Log log = LogFactory.getLog(IBZ5ORDERDETAIL.class);
    /**
     *   实体属性标识[小计]
     */
    public final static String FIELD_AMOUNT = "AMOUNT";
    /**
     *   实体属性标识[建立时间]
     */
    public final static String FIELD_CREATEDATE = "CREATEDATE";
    /**
     *   实体属性标识[建立人]
     */
    public final static String FIELD_CREATEMAN = "CREATEMAN";
    /**
     *   实体属性标识[订单明细标识]
     */
    public final static String FIELD_IBZ5ORDERDETAILID = "IBZ5ORDERDETAILID";
    /**
     *   实体属性标识[订单明细名称]
     */
    public final static String FIELD_IBZ5ORDERDETAILNAME = "IBZ5ORDERDETAILNAME";
    /**
     *   实体属性标识[订单标识]
     */
    public final static String FIELD_IBZ5ORDERID = "IBZ5ORDERID";
    /**
     *   实体属性标识[订单名称]
     */
    public final static String FIELD_IBZ5ORDERNAME = "IBZ5ORDERNAME";
    /**
     *   实体属性标识[统一产品标识]
     */
    public final static String FIELD_IBZ5UNITPRODUCTID = "IBZ5UNITPRODUCTID";
    /**
     *   实体属性标识[统一产品名称]
     */
    public final static String FIELD_IBZ5UNITPRODUCTNAME = "IBZ5UNITPRODUCTNAME";
    /**
     *   实体属性标识[订单编号]
     */
    public final static String FIELD_ORDERUID = "ORDERUID";
    /**
     *   实体属性标识[数量]
     */
    public final static String FIELD_QUANTITY = "QUANTITY";
    /**
     *   实体属性标识[单位]
     */
    public final static String FIELD_UNIT = "UNIT";
    /**
     *   实体属性标识[单价]
     */
    public final static String FIELD_UNITPRICE = "UNITPRICE";
    /**
     *   实体属性标识[更新时间]
     */
    public final static String FIELD_UPDATEDATE = "UPDATEDATE";
    /**
     *   实体属性标识[更新人]
     */
    public final static String FIELD_UPDATEMAN = "UPDATEMAN";

    private final static int INDEX_AMOUNT = 0;
    private final static int INDEX_CREATEDATE = 1;
    private final static int INDEX_CREATEMAN = 2;
    private final static int INDEX_IBZ5ORDERDETAILID = 3;
    private final static int INDEX_IBZ5ORDERDETAILNAME = 4;
    private final static int INDEX_IBZ5ORDERID = 5;
    private final static int INDEX_IBZ5ORDERNAME = 6;
    private final static int INDEX_IBZ5UNITPRODUCTID = 7;
    private final static int INDEX_IBZ5UNITPRODUCTNAME = 8;
    private final static int INDEX_ORDERUID = 9;
    private final static int INDEX_QUANTITY = 10;
    private final static int INDEX_UNIT = 11;
    private final static int INDEX_UNITPRICE = 12;
    private final static int INDEX_UPDATEDATE = 13;
    private final static int INDEX_UPDATEMAN = 14;

    private final static HashMap<String, Integer> fieldIndexMap = new HashMap<String, Integer>();
    static {
        fieldIndexMap.put( FIELD_AMOUNT, INDEX_AMOUNT);
        fieldIndexMap.put( FIELD_CREATEDATE, INDEX_CREATEDATE);
        fieldIndexMap.put( FIELD_CREATEMAN, INDEX_CREATEMAN);
        fieldIndexMap.put( FIELD_IBZ5ORDERDETAILID, INDEX_IBZ5ORDERDETAILID);
        fieldIndexMap.put( FIELD_IBZ5ORDERDETAILNAME, INDEX_IBZ5ORDERDETAILNAME);
        fieldIndexMap.put( FIELD_IBZ5ORDERID, INDEX_IBZ5ORDERID);
        fieldIndexMap.put( FIELD_IBZ5ORDERNAME, INDEX_IBZ5ORDERNAME);
        fieldIndexMap.put( FIELD_IBZ5UNITPRODUCTID, INDEX_IBZ5UNITPRODUCTID);
        fieldIndexMap.put( FIELD_IBZ5UNITPRODUCTNAME, INDEX_IBZ5UNITPRODUCTNAME);
        fieldIndexMap.put( FIELD_ORDERUID, INDEX_ORDERUID);
        fieldIndexMap.put( FIELD_QUANTITY, INDEX_QUANTITY);
        fieldIndexMap.put( FIELD_UNIT, INDEX_UNIT);
        fieldIndexMap.put( FIELD_UNITPRICE, INDEX_UNITPRICE);
        fieldIndexMap.put( FIELD_UPDATEDATE, INDEX_UPDATEDATE);
        fieldIndexMap.put( FIELD_UPDATEMAN, INDEX_UPDATEMAN);
    }

    private IBZ5ORDERDETAIL proxyIBZ5ORDERDETAIL = null;

    public IBZ5ORDERDETAIL() {
        super();
    }
    private boolean amountDirtyFlag = false;
    private boolean createdateDirtyFlag = false;
    private boolean createmanDirtyFlag = false;
    private boolean ibz5orderdetailidDirtyFlag = false;
    private boolean ibz5orderdetailnameDirtyFlag = false;
    private boolean ibz5orderidDirtyFlag = false;
    private boolean ibz5ordernameDirtyFlag = false;
    private boolean ibz5unitproductidDirtyFlag = false;
    private boolean ibz5unitproductnameDirtyFlag = false;
    private boolean orderuidDirtyFlag = false;
    private boolean quantityDirtyFlag = false;
    private boolean unitDirtyFlag = false;
    private boolean unitpriceDirtyFlag = false;
    private boolean updatedateDirtyFlag = false;
    private boolean updatemanDirtyFlag = false;

    @Column(name="amount")
    private Double amount;
    @Column(name="createdate")
    private Timestamp createdate;
    @Column(name="createman")
    private String createman;
    @Column(name="ibz5orderdetailid")
    private String ibz5orderdetailid;
    @Column(name="ibz5orderdetailname")
    private String ibz5orderdetailname;
    @Column(name="ibz5orderid")
    private String ibz5orderid;
    @Column(name="ibz5ordername")
    private String ibz5ordername;
    @Column(name="ibz5unitproductid")
    private String ibz5unitproductid;
    @Column(name="ibz5unitproductname")
    private String ibz5unitproductname;
    @Column(name="orderuid")
    private String orderuid;
    @Column(name="quantity")
    private Integer quantity;
    @Column(name="unit")
    private String unit;
    @Column(name="unitprice")
    private Double unitprice;
    @Column(name="updatedate")
    private Timestamp updatedate;
    @Column(name="updateman")
    private String updateman;


    /**
     *  设置属性值[小计]
     *  @param amount
     */
    public void setAmount(Double amount) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setAmount(amount);
            return;
        }
        this.amount =  amount;
        this.amountDirtyFlag  = true;
    }

    /**
     *  获取属性值[小计]
     */
    public Double getAmount() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getAmount();
        }
        return this.amount;
    }

    /**
     *  获取属性值[小计]是否修改
     */
    public boolean isAmountDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isAmountDirty();
        }
        return this.amountDirtyFlag;
    }

    /**
     *  重置属性值[小计]
     */
    public void resetAmount() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetAmount();
            return;
        }

        this.amountDirtyFlag = false;
        this.amount = null;
    }
    /**
     *  设置属性值[建立时间]
     *  @param createdate
     */
    public void setCreateDate(Timestamp createdate) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setCreateDate(createdate);
            return;
        }
        this.createdate =  createdate;
        this.createdateDirtyFlag  = true;
    }

    /**
     *  获取属性值[建立时间]
     */
    public Timestamp getCreateDate() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getCreateDate();
        }
        return this.createdate;
    }

    /**
     *  获取属性值[建立时间]是否修改
     */
    public boolean isCreateDateDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isCreateDateDirty();
        }
        return this.createdateDirtyFlag;
    }

    /**
     *  重置属性值[建立时间]
     */
    public void resetCreateDate() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetCreateDate();
            return;
        }

        this.createdateDirtyFlag = false;
        this.createdate = null;
    }
    /**
     *  设置属性值[建立人]代码表：com.sa.ibiz.demo.srv.codelist.SysOperatorCodeListModel
     *  @param createman
     */
    public void setCreateMan(String createman) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setCreateMan(createman);
            return;
        }
        if(createman!=null) {
            createman = StringHelper.trimRight(createman);
            if(createman.length()==0) {
                createman = null;
            }
        }
        this.createman =  createman;
        this.createmanDirtyFlag  = true;
    }

    /**
     *  获取属性值[建立人]代码表：com.sa.ibiz.demo.srv.codelist.SysOperatorCodeListModel
     */
    public String getCreateMan() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getCreateMan();
        }
        return this.createman;
    }

    /**
     *  获取属性值[建立人]是否修改
     */
    public boolean isCreateManDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isCreateManDirty();
        }
        return this.createmanDirtyFlag;
    }

    /**
     *  重置属性值[建立人]
     */
    public void resetCreateMan() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetCreateMan();
            return;
        }

        this.createmanDirtyFlag = false;
        this.createman = null;
    }
    /**
     *  设置属性值[订单明细标识]
     *  @param ibz5orderdetailid
     */
    public void setIBZ5ORDERDETAILId(String ibz5orderdetailid) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5ORDERDETAILId(ibz5orderdetailid);
            return;
        }
        if(ibz5orderdetailid!=null) {
            ibz5orderdetailid = StringHelper.trimRight(ibz5orderdetailid);
            if(ibz5orderdetailid.length()==0) {
                ibz5orderdetailid = null;
            }
        }
        this.ibz5orderdetailid =  ibz5orderdetailid;
        this.ibz5orderdetailidDirtyFlag  = true;
    }

    /**
     *  获取属性值[订单明细标识]
     */
    public String getIBZ5ORDERDETAILId() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5ORDERDETAILId();
        }
        return this.ibz5orderdetailid;
    }

    /**
     *  获取属性值[订单明细标识]是否修改
     */
    public boolean isIBZ5ORDERDETAILIdDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5ORDERDETAILIdDirty();
        }
        return this.ibz5orderdetailidDirtyFlag;
    }

    /**
     *  重置属性值[订单明细标识]
     */
    public void resetIBZ5ORDERDETAILId() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5ORDERDETAILId();
            return;
        }

        this.ibz5orderdetailidDirtyFlag = false;
        this.ibz5orderdetailid = null;
    }
    /**
     *  设置属性值[订单明细名称]
     *  @param ibz5orderdetailname
     */
    public void setIBZ5ORDERDETAILName(String ibz5orderdetailname) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5ORDERDETAILName(ibz5orderdetailname);
            return;
        }
        if(ibz5orderdetailname!=null) {
            ibz5orderdetailname = StringHelper.trimRight(ibz5orderdetailname);
            if(ibz5orderdetailname.length()==0) {
                ibz5orderdetailname = null;
            }
        }
        this.ibz5orderdetailname =  ibz5orderdetailname;
        this.ibz5orderdetailnameDirtyFlag  = true;
    }

    /**
     *  获取属性值[订单明细名称]
     */
    public String getIBZ5ORDERDETAILName() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5ORDERDETAILName();
        }
        return this.ibz5orderdetailname;
    }

    /**
     *  获取属性值[订单明细名称]是否修改
     */
    public boolean isIBZ5ORDERDETAILNameDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5ORDERDETAILNameDirty();
        }
        return this.ibz5orderdetailnameDirtyFlag;
    }

    /**
     *  重置属性值[订单明细名称]
     */
    public void resetIBZ5ORDERDETAILName() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5ORDERDETAILName();
            return;
        }

        this.ibz5orderdetailnameDirtyFlag = false;
        this.ibz5orderdetailname = null;
    }
    /**
     *  设置属性值[订单标识]
     *  @param ibz5orderid
     */
    public void setIBZ5ORDERId(String ibz5orderid) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5ORDERId(ibz5orderid);
            return;
        }
        if(ibz5orderid!=null) {
            ibz5orderid = StringHelper.trimRight(ibz5orderid);
            if(ibz5orderid.length()==0) {
                ibz5orderid = null;
            }
        }
        this.ibz5orderid =  ibz5orderid;
        this.ibz5orderidDirtyFlag  = true;
    }

    /**
     *  获取属性值[订单标识]
     */
    public String getIBZ5ORDERId() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5ORDERId();
        }
        return this.ibz5orderid;
    }

    /**
     *  获取属性值[订单标识]是否修改
     */
    public boolean isIBZ5ORDERIdDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5ORDERIdDirty();
        }
        return this.ibz5orderidDirtyFlag;
    }

    /**
     *  重置属性值[订单标识]
     */
    public void resetIBZ5ORDERId() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5ORDERId();
            return;
        }

        this.ibz5orderidDirtyFlag = false;
        this.ibz5orderid = null;
    }
    /**
     *  设置属性值[订单名称]
     *  @param ibz5ordername
     */
    public void setIBZ5ORDERName(String ibz5ordername) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5ORDERName(ibz5ordername);
            return;
        }
        if(ibz5ordername!=null) {
            ibz5ordername = StringHelper.trimRight(ibz5ordername);
            if(ibz5ordername.length()==0) {
                ibz5ordername = null;
            }
        }
        this.ibz5ordername =  ibz5ordername;
        this.ibz5ordernameDirtyFlag  = true;
    }

    /**
     *  获取属性值[订单名称]
     */
    public String getIBZ5ORDERName() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5ORDERName();
        }
        return this.ibz5ordername;
    }

    /**
     *  获取属性值[订单名称]是否修改
     */
    public boolean isIBZ5ORDERNameDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5ORDERNameDirty();
        }
        return this.ibz5ordernameDirtyFlag;
    }

    /**
     *  重置属性值[订单名称]
     */
    public void resetIBZ5ORDERName() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5ORDERName();
            return;
        }

        this.ibz5ordernameDirtyFlag = false;
        this.ibz5ordername = null;
    }
    /**
     *  设置属性值[统一产品标识]
     *  @param ibz5unitproductid
     */
    public void setIBZ5UNITPRODUCTId(String ibz5unitproductid) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5UNITPRODUCTId(ibz5unitproductid);
            return;
        }
        if(ibz5unitproductid!=null) {
            ibz5unitproductid = StringHelper.trimRight(ibz5unitproductid);
            if(ibz5unitproductid.length()==0) {
                ibz5unitproductid = null;
            }
        }
        this.ibz5unitproductid =  ibz5unitproductid;
        this.ibz5unitproductidDirtyFlag  = true;
    }

    /**
     *  获取属性值[统一产品标识]
     */
    public String getIBZ5UNITPRODUCTId() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5UNITPRODUCTId();
        }
        return this.ibz5unitproductid;
    }

    /**
     *  获取属性值[统一产品标识]是否修改
     */
    public boolean isIBZ5UNITPRODUCTIdDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5UNITPRODUCTIdDirty();
        }
        return this.ibz5unitproductidDirtyFlag;
    }

    /**
     *  重置属性值[统一产品标识]
     */
    public void resetIBZ5UNITPRODUCTId() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5UNITPRODUCTId();
            return;
        }

        this.ibz5unitproductidDirtyFlag = false;
        this.ibz5unitproductid = null;
    }
    /**
     *  设置属性值[统一产品名称]
     *  @param ibz5unitproductname
     */
    public void setIBZ5UNITPRODUCTName(String ibz5unitproductname) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setIBZ5UNITPRODUCTName(ibz5unitproductname);
            return;
        }
        if(ibz5unitproductname!=null) {
            ibz5unitproductname = StringHelper.trimRight(ibz5unitproductname);
            if(ibz5unitproductname.length()==0) {
                ibz5unitproductname = null;
            }
        }
        this.ibz5unitproductname =  ibz5unitproductname;
        this.ibz5unitproductnameDirtyFlag  = true;
    }

    /**
     *  获取属性值[统一产品名称]
     */
    public String getIBZ5UNITPRODUCTName() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5UNITPRODUCTName();
        }
        return this.ibz5unitproductname;
    }

    /**
     *  获取属性值[统一产品名称]是否修改
     */
    public boolean isIBZ5UNITPRODUCTNameDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isIBZ5UNITPRODUCTNameDirty();
        }
        return this.ibz5unitproductnameDirtyFlag;
    }

    /**
     *  重置属性值[统一产品名称]
     */
    public void resetIBZ5UNITPRODUCTName() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetIBZ5UNITPRODUCTName();
            return;
        }

        this.ibz5unitproductnameDirtyFlag = false;
        this.ibz5unitproductname = null;
    }
    /**
     *  设置属性值[订单编号]
     *  @param orderuid
     */
    public void setORDERUID(String orderuid) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setORDERUID(orderuid);
            return;
        }
        if(orderuid!=null) {
            orderuid = StringHelper.trimRight(orderuid);
            if(orderuid.length()==0) {
                orderuid = null;
            }
        }
        this.orderuid =  orderuid;
        this.orderuidDirtyFlag  = true;
    }

    /**
     *  获取属性值[订单编号]
     */
    public String getORDERUID() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getORDERUID();
        }
        return this.orderuid;
    }

    /**
     *  获取属性值[订单编号]是否修改
     */
    public boolean isORDERUIDDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isORDERUIDDirty();
        }
        return this.orderuidDirtyFlag;
    }

    /**
     *  重置属性值[订单编号]
     */
    public void resetORDERUID() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetORDERUID();
            return;
        }

        this.orderuidDirtyFlag = false;
        this.orderuid = null;
    }
    /**
     *  设置属性值[数量]
     *  @param quantity
     */
    public void setQUANTITY(Integer quantity) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setQUANTITY(quantity);
            return;
        }
        this.quantity =  quantity;
        this.quantityDirtyFlag  = true;
    }

    /**
     *  获取属性值[数量]
     */
    public Integer getQUANTITY() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getQUANTITY();
        }
        return this.quantity;
    }

    /**
     *  获取属性值[数量]是否修改
     */
    public boolean isQUANTITYDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isQUANTITYDirty();
        }
        return this.quantityDirtyFlag;
    }

    /**
     *  重置属性值[数量]
     */
    public void resetQUANTITY() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetQUANTITY();
            return;
        }

        this.quantityDirtyFlag = false;
        this.quantity = null;
    }
    /**
     *  设置属性值[单位]
     *  @param unit
     */
    public void setUNIT(String unit) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setUNIT(unit);
            return;
        }
        if(unit!=null) {
            unit = StringHelper.trimRight(unit);
            if(unit.length()==0) {
                unit = null;
            }
        }
        this.unit =  unit;
        this.unitDirtyFlag  = true;
    }

    /**
     *  获取属性值[单位]
     */
    public String getUNIT() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getUNIT();
        }
        return this.unit;
    }

    /**
     *  获取属性值[单位]是否修改
     */
    public boolean isUNITDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isUNITDirty();
        }
        return this.unitDirtyFlag;
    }

    /**
     *  重置属性值[单位]
     */
    public void resetUNIT() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetUNIT();
            return;
        }

        this.unitDirtyFlag = false;
        this.unit = null;
    }
    /**
     *  设置属性值[单价]
     *  @param unitprice
     */
    public void setUnitPrice(Double unitprice) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setUnitPrice(unitprice);
            return;
        }
        this.unitprice =  unitprice;
        this.unitpriceDirtyFlag  = true;
    }

    /**
     *  获取属性值[单价]
     */
    public Double getUnitPrice() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getUnitPrice();
        }
        return this.unitprice;
    }

    /**
     *  获取属性值[单价]是否修改
     */
    public boolean isUnitPriceDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isUnitPriceDirty();
        }
        return this.unitpriceDirtyFlag;
    }

    /**
     *  重置属性值[单价]
     */
    public void resetUnitPrice() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetUnitPrice();
            return;
        }

        this.unitpriceDirtyFlag = false;
        this.unitprice = null;
    }
    /**
     *  设置属性值[更新时间]
     *  @param updatedate
     */
    public void setUpdateDate(Timestamp updatedate) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setUpdateDate(updatedate);
            return;
        }
        this.updatedate =  updatedate;
        this.updatedateDirtyFlag  = true;
    }

    /**
     *  获取属性值[更新时间]
     */
    public Timestamp getUpdateDate() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getUpdateDate();
        }
        return this.updatedate;
    }

    /**
     *  获取属性值[更新时间]是否修改
     */
    public boolean isUpdateDateDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isUpdateDateDirty();
        }
        return this.updatedateDirtyFlag;
    }

    /**
     *  重置属性值[更新时间]
     */
    public void resetUpdateDate() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetUpdateDate();
            return;
        }

        this.updatedateDirtyFlag = false;
        this.updatedate = null;
    }
    /**
     *  设置属性值[更新人]代码表：com.sa.ibiz.demo.srv.codelist.SysOperatorCodeListModel
     *  @param updateman
     */
    public void setUpdateMan(String updateman) {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().setUpdateMan(updateman);
            return;
        }
        if(updateman!=null) {
            updateman = StringHelper.trimRight(updateman);
            if(updateman.length()==0) {
                updateman = null;
            }
        }
        this.updateman =  updateman;
        this.updatemanDirtyFlag  = true;
    }

    /**
     *  获取属性值[更新人]代码表：com.sa.ibiz.demo.srv.codelist.SysOperatorCodeListModel
     */
    public String getUpdateMan() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getUpdateMan();
        }
        return this.updateman;
    }

    /**
     *  获取属性值[更新人]是否修改
     */
    public boolean isUpdateManDirty() {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isUpdateManDirty();
        }
        return this.updatemanDirtyFlag;
    }

    /**
     *  重置属性值[更新人]
     */
    public void resetUpdateMan() {

        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().resetUpdateMan();
            return;
        }

        this.updatemanDirtyFlag = false;
        this.updateman = null;
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.entity.EntityBase#onReset()
     */
    @Override
    protected void onReset() {
        IBZ5ORDERDETAIL.resetAll(this);
        super.onReset();
    }

    /**
     * 重置当前数据对象属性值
     * @param entity
     */
    private static void resetAll(IBZ5ORDERDETAIL et) {
        et.resetAmount();
        et.resetCreateDate();
        et.resetCreateMan();
        et.resetIBZ5ORDERDETAILId();
        et.resetIBZ5ORDERDETAILName();
        et.resetIBZ5ORDERId();
        et.resetIBZ5ORDERName();
        et.resetIBZ5UNITPRODUCTId();
        et.resetIBZ5UNITPRODUCTName();
        et.resetORDERUID();
        et.resetQUANTITY();
        et.resetUNIT();
        et.resetUnitPrice();
        et.resetUpdateDate();
        et.resetUpdateMan();
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.entity.EntityBase#onFillMap(java.util.HashMap, boolean)
     */
    @Override
    protected void onFillMap(HashMap<String, Object> params, boolean bDirtyOnly) {
        if(!bDirtyOnly || isAmountDirty()) {
            params.put(FIELD_AMOUNT,getAmount());
        }
        if(!bDirtyOnly || isCreateDateDirty()) {
            params.put(FIELD_CREATEDATE,getCreateDate());
        }
        if(!bDirtyOnly || isCreateManDirty()) {
            params.put(FIELD_CREATEMAN,getCreateMan());
        }
        if(!bDirtyOnly || isIBZ5ORDERDETAILIdDirty()) {
            params.put(FIELD_IBZ5ORDERDETAILID,getIBZ5ORDERDETAILId());
        }
        if(!bDirtyOnly || isIBZ5ORDERDETAILNameDirty()) {
            params.put(FIELD_IBZ5ORDERDETAILNAME,getIBZ5ORDERDETAILName());
        }
        if(!bDirtyOnly || isIBZ5ORDERIdDirty()) {
            params.put(FIELD_IBZ5ORDERID,getIBZ5ORDERId());
        }
        if(!bDirtyOnly || isIBZ5ORDERNameDirty()) {
            params.put(FIELD_IBZ5ORDERNAME,getIBZ5ORDERName());
        }
        if(!bDirtyOnly || isIBZ5UNITPRODUCTIdDirty()) {
            params.put(FIELD_IBZ5UNITPRODUCTID,getIBZ5UNITPRODUCTId());
        }
        if(!bDirtyOnly || isIBZ5UNITPRODUCTNameDirty()) {
            params.put(FIELD_IBZ5UNITPRODUCTNAME,getIBZ5UNITPRODUCTName());
        }
        if(!bDirtyOnly || isORDERUIDDirty()) {
            params.put(FIELD_ORDERUID,getORDERUID());
        }
        if(!bDirtyOnly || isQUANTITYDirty()) {
            params.put(FIELD_QUANTITY,getQUANTITY());
        }
        if(!bDirtyOnly || isUNITDirty()) {
            params.put(FIELD_UNIT,getUNIT());
        }
        if(!bDirtyOnly || isUnitPriceDirty()) {
            params.put(FIELD_UNITPRICE,getUnitPrice());
        }
        if(!bDirtyOnly || isUpdateDateDirty()) {
            params.put(FIELD_UPDATEDATE,getUpdateDate());
        }
        if(!bDirtyOnly || isUpdateManDirty()) {
            params.put(FIELD_UPDATEMAN,getUpdateMan());
        }
        super.onFillMap(params, bDirtyOnly);
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#get(java.lang.String)
     */
    @Override
    public Object get(String strParamName) throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().get(strParamName);
        }

        if(StringHelper.isNullOrEmpty(strParamName))
            throw new Exception("没有指定属性");
        Integer index=fieldIndexMap.get(strParamName.toUpperCase());
        if(index==null)
            return super.get(strParamName);

        return  IBZ5ORDERDETAIL.get(this, index);
    }

    /**
     * 通过属性标识获取属性值
     * @param et 数据对象
     * @param index 属性标识
     * @return
     * @throws Exception
     */
    private static Object get(IBZ5ORDERDETAIL et,int index) throws Exception {

        switch(index) {
        case INDEX_AMOUNT:
            return et.getAmount();
        case INDEX_CREATEDATE:
            return et.getCreateDate();
        case INDEX_CREATEMAN:
            return et.getCreateMan();
        case INDEX_IBZ5ORDERDETAILID:
            return et.getIBZ5ORDERDETAILId();
        case INDEX_IBZ5ORDERDETAILNAME:
            return et.getIBZ5ORDERDETAILName();
        case INDEX_IBZ5ORDERID:
            return et.getIBZ5ORDERId();
        case INDEX_IBZ5ORDERNAME:
            return et.getIBZ5ORDERName();
        case INDEX_IBZ5UNITPRODUCTID:
            return et.getIBZ5UNITPRODUCTId();
        case INDEX_IBZ5UNITPRODUCTNAME:
            return et.getIBZ5UNITPRODUCTName();
        case INDEX_ORDERUID:
            return et.getORDERUID();
        case INDEX_QUANTITY:
            return et.getQUANTITY();
        case INDEX_UNIT:
            return et.getUNIT();
        case INDEX_UNITPRICE:
            return et.getUnitPrice();
        case INDEX_UPDATEDATE:
            return et.getUpdateDate();
        case INDEX_UPDATEMAN:
            return et.getUpdateMan();
        default:
            throw new Exception("不明属性标识");
        }
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#set(java.lang.String, java.lang.Object)
     */
    @Override
    public void set(String strParamName,Object objValue) throws Exception {
        if(this.getProxyEntity()!=null) {
            this.getProxyEntity().set(strParamName,objValue);
            return;
        }
        if(StringHelper.isNullOrEmpty(strParamName))
            throw new Exception("没有指定属性");

        Integer index=fieldIndexMap.get(strParamName.toUpperCase());
        if(index==null) {
            super.set(strParamName,objValue);
            return;
        }

        IBZ5ORDERDETAIL.set(this,index,objValue);
    }

    /**
     * 通过属性标识设定属性值
     * @param et 数据对象
     * @param index 属性标识
     * @param obj 值
     * @throws Exception
     */
    private static void set(IBZ5ORDERDETAIL et,int index,Object obj) throws Exception {
        switch(index) {
        case INDEX_AMOUNT:
            et.setAmount(DataObject.getDoubleValue(obj));
            return ;
        case INDEX_CREATEDATE:
            et.setCreateDate(DataObject.getTimestampValue(obj));
            return ;
        case INDEX_CREATEMAN:
            et.setCreateMan(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5ORDERDETAILID:
            et.setIBZ5ORDERDETAILId(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5ORDERDETAILNAME:
            et.setIBZ5ORDERDETAILName(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5ORDERID:
            et.setIBZ5ORDERId(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5ORDERNAME:
            et.setIBZ5ORDERName(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5UNITPRODUCTID:
            et.setIBZ5UNITPRODUCTId(DataObject.getStringValue(obj));
            return ;
        case INDEX_IBZ5UNITPRODUCTNAME:
            et.setIBZ5UNITPRODUCTName(DataObject.getStringValue(obj));
            return ;
        case INDEX_ORDERUID:
            et.setORDERUID(DataObject.getStringValue(obj));
            return ;
        case INDEX_QUANTITY:
            et.setQUANTITY(DataObject.getIntegerValue(obj));
            return ;
        case INDEX_UNIT:
            et.setUNIT(DataObject.getStringValue(obj));
            return ;
        case INDEX_UNITPRICE:
            et.setUnitPrice(DataObject.getDoubleValue(obj));
            return ;
        case INDEX_UPDATEDATE:
            et.setUpdateDate(DataObject.getTimestampValue(obj));
            return ;
        case INDEX_UPDATEMAN:
            et.setUpdateMan(DataObject.getStringValue(obj));
            return ;
        default:
            throw new Exception("不明属性标识");
        }
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#isNull(java.lang.String)
     */
    @Override
    public boolean isNull(String strParamName) throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().isNull(strParamName);
        }
        if(StringHelper.isNullOrEmpty(strParamName))
            throw new Exception("没有指定属性");

        Integer index=fieldIndexMap.get(strParamName.toUpperCase());
        if(index==null)
            return super.isNull(strParamName);

        return  IBZ5ORDERDETAIL.isNull(this, index);
    }

    /**
     * 判断指定属性值是否为空值
     * @param et
     * @param index
     * @return
     * @throws Exception
     */
    private static boolean isNull(IBZ5ORDERDETAIL et,int index) throws Exception {

        switch(index) {
        case INDEX_AMOUNT:
            return et.getAmount()==null;
        case INDEX_CREATEDATE:
            return et.getCreateDate()==null;
        case INDEX_CREATEMAN:
            return et.getCreateMan()==null;
        case INDEX_IBZ5ORDERDETAILID:
            return et.getIBZ5ORDERDETAILId()==null;
        case INDEX_IBZ5ORDERDETAILNAME:
            return et.getIBZ5ORDERDETAILName()==null;
        case INDEX_IBZ5ORDERID:
            return et.getIBZ5ORDERId()==null;
        case INDEX_IBZ5ORDERNAME:
            return et.getIBZ5ORDERName()==null;
        case INDEX_IBZ5UNITPRODUCTID:
            return et.getIBZ5UNITPRODUCTId()==null;
        case INDEX_IBZ5UNITPRODUCTNAME:
            return et.getIBZ5UNITPRODUCTName()==null;
        case INDEX_ORDERUID:
            return et.getORDERUID()==null;
        case INDEX_QUANTITY:
            return et.getQUANTITY()==null;
        case INDEX_UNIT:
            return et.getUNIT()==null;
        case INDEX_UNITPRICE:
            return et.getUnitPrice()==null;
        case INDEX_UPDATEDATE:
            return et.getUpdateDate()==null;
        case INDEX_UPDATEMAN:
            return et.getUpdateMan()==null;
        default:
            throw new Exception("不明属性标识");
        }
    }


    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#contains(java.lang.String)
     */
    @Override
    public boolean contains(String strParamName) throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().contains(strParamName);
        }

        if(StringHelper.isNullOrEmpty(strParamName))
            throw new Exception("没有指定属性");
        Integer index=fieldIndexMap.get(strParamName.toUpperCase());
        if(index==null)
            return super.contains(strParamName);

        return  IBZ5ORDERDETAIL.contains(this, index);
    }

    /**
     * 获取判断对象是否存在指定属性值
     * @param et
     * @param index
     * @return
     * @throws Exception
     */
    private static boolean contains(IBZ5ORDERDETAIL et,int index) throws Exception {

        switch(index) {
        case INDEX_AMOUNT:
            return et.isAmountDirty();
        case INDEX_CREATEDATE:
            return et.isCreateDateDirty();
        case INDEX_CREATEMAN:
            return et.isCreateManDirty();
        case INDEX_IBZ5ORDERDETAILID:
            return et.isIBZ5ORDERDETAILIdDirty();
        case INDEX_IBZ5ORDERDETAILNAME:
            return et.isIBZ5ORDERDETAILNameDirty();
        case INDEX_IBZ5ORDERID:
            return et.isIBZ5ORDERIdDirty();
        case INDEX_IBZ5ORDERNAME:
            return et.isIBZ5ORDERNameDirty();
        case INDEX_IBZ5UNITPRODUCTID:
            return et.isIBZ5UNITPRODUCTIdDirty();
        case INDEX_IBZ5UNITPRODUCTNAME:
            return et.isIBZ5UNITPRODUCTNameDirty();
        case INDEX_ORDERUID:
            return et.isORDERUIDDirty();
        case INDEX_QUANTITY:
            return et.isQUANTITYDirty();
        case INDEX_UNIT:
            return et.isUNITDirty();
        case INDEX_UNITPRICE:
            return et.isUnitPriceDirty();
        case INDEX_UPDATEDATE:
            return et.isUpdateDateDirty();
        case INDEX_UPDATEMAN:
            return et.isUpdateManDirty();
        default:
            throw new Exception("不明属性标识");
        }
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#onFillJSONObject(net.sf.json.JSONObject, boolean)
     */
    @Override
    protected void onFillJSONObject(JSONObject objJSON, boolean bIncludeEmpty) throws Exception {
        fillJSONObject(this,objJSON,bIncludeEmpty);
        super.onFillJSONObject(objJSON, bIncludeEmpty);
    }

    /**
     * 填充当前对象到JSON
     * @param et 当前数据对象
     * @param json JSON对象
     * @param bIncEmpty 是否包括空值
     * @throws Exception
     */
    private static  void fillJSONObject(IBZ5ORDERDETAIL et,JSONObject json, boolean bIncEmpty) throws Exception {
        if(bIncEmpty||et.getAmount()!=null) {
            JSONObjectHelper.put(json,"amount",getJSONValue(et.getAmount()),false);
        }
        if(bIncEmpty||et.getCreateDate()!=null) {
            JSONObjectHelper.put(json,"createdate",getJSONValue(et.getCreateDate()),false);
        }
        if(bIncEmpty||et.getCreateMan()!=null) {
            JSONObjectHelper.put(json,"createman",getJSONValue(et.getCreateMan()),false);
        }
        if(bIncEmpty||et.getIBZ5ORDERDETAILId()!=null) {
            JSONObjectHelper.put(json,"ibz5orderdetailid",getJSONValue(et.getIBZ5ORDERDETAILId()),false);
        }
        if(bIncEmpty||et.getIBZ5ORDERDETAILName()!=null) {
            JSONObjectHelper.put(json,"ibz5orderdetailname",getJSONValue(et.getIBZ5ORDERDETAILName()),false);
        }
        if(bIncEmpty||et.getIBZ5ORDERId()!=null) {
            JSONObjectHelper.put(json,"ibz5orderid",getJSONValue(et.getIBZ5ORDERId()),false);
        }
        if(bIncEmpty||et.getIBZ5ORDERName()!=null) {
            JSONObjectHelper.put(json,"ibz5ordername",getJSONValue(et.getIBZ5ORDERName()),false);
        }
        if(bIncEmpty||et.getIBZ5UNITPRODUCTId()!=null) {
            JSONObjectHelper.put(json,"ibz5unitproductid",getJSONValue(et.getIBZ5UNITPRODUCTId()),false);
        }
        if(bIncEmpty||et.getIBZ5UNITPRODUCTName()!=null) {
            JSONObjectHelper.put(json,"ibz5unitproductname",getJSONValue(et.getIBZ5UNITPRODUCTName()),false);
        }
        if(bIncEmpty||et.getORDERUID()!=null) {
            JSONObjectHelper.put(json,"orderuid",getJSONValue(et.getORDERUID()),false);
        }
        if(bIncEmpty||et.getQUANTITY()!=null) {
            JSONObjectHelper.put(json,"quantity",getJSONValue(et.getQUANTITY()),false);
        }
        if(bIncEmpty||et.getUNIT()!=null) {
            JSONObjectHelper.put(json,"unit",getJSONValue(et.getUNIT()),false);
        }
        if(bIncEmpty||et.getUnitPrice()!=null) {
            JSONObjectHelper.put(json,"unitprice",getJSONValue(et.getUnitPrice()),false);
        }
        if(bIncEmpty||et.getUpdateDate()!=null) {
            JSONObjectHelper.put(json,"updatedate",getJSONValue(et.getUpdateDate()),false);
        }
        if(bIncEmpty||et.getUpdateMan()!=null) {
            JSONObjectHelper.put(json,"updateman",getJSONValue(et.getUpdateMan()),false);
        }
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#onFillXmlNode(net.ibizsys.paas.xml.XmlNode, boolean)
     */
    @Override
    protected void onFillXmlNode(XmlNode xmlNode,boolean bIncludeEmpty) throws Exception {
        fillXmlNode(this,xmlNode,bIncludeEmpty);
        super.onFillXmlNode(xmlNode, bIncludeEmpty);
    }

    /**
     * 填充当前对象到Xml节点中
     * @param et 当前数据对象
     * @param node Xml节点
     * @param bIncEmpty 是否包括空值
     * @throws Exception
     */
    private static void fillXmlNode(IBZ5ORDERDETAIL et,XmlNode node,boolean bIncEmpty) throws Exception {
        if(bIncEmpty||et.getAmount()!=null) {
            Object obj = et.getAmount();
            node.setAttribute("AMOUNT",(obj==null)?"":StringHelper.format("%1$s",obj));
        }
        if(bIncEmpty||et.getCreateDate()!=null) {
            Object obj = et.getCreateDate();
            node.setAttribute("CREATEDATE",(obj==null)?"":StringHelper.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS",obj));
        }
        if(bIncEmpty||et.getCreateMan()!=null) {
            Object obj = et.getCreateMan();
            node.setAttribute("CREATEMAN",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5ORDERDETAILId()!=null) {
            Object obj = et.getIBZ5ORDERDETAILId();
            node.setAttribute("IBZ5ORDERDETAILID",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5ORDERDETAILName()!=null) {
            Object obj = et.getIBZ5ORDERDETAILName();
            node.setAttribute("IBZ5ORDERDETAILNAME",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5ORDERId()!=null) {
            Object obj = et.getIBZ5ORDERId();
            node.setAttribute("IBZ5ORDERID",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5ORDERName()!=null) {
            Object obj = et.getIBZ5ORDERName();
            node.setAttribute("IBZ5ORDERNAME",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5UNITPRODUCTId()!=null) {
            Object obj = et.getIBZ5UNITPRODUCTId();
            node.setAttribute("IBZ5UNITPRODUCTID",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getIBZ5UNITPRODUCTName()!=null) {
            Object obj = et.getIBZ5UNITPRODUCTName();
            node.setAttribute("IBZ5UNITPRODUCTNAME",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getORDERUID()!=null) {
            Object obj = et.getORDERUID();
            node.setAttribute("ORDERUID",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getQUANTITY()!=null) {
            Object obj = et.getQUANTITY();
            node.setAttribute("QUANTITY",(obj==null)?"":StringHelper.format("%1$s",obj));
        }
        if(bIncEmpty||et.getUNIT()!=null) {
            Object obj = et.getUNIT();
            node.setAttribute("UNIT",(obj==null)?"":(String)obj);
        }
        if(bIncEmpty||et.getUnitPrice()!=null) {
            Object obj = et.getUnitPrice();
            node.setAttribute("UNITPRICE",(obj==null)?"":StringHelper.format("%1$s",obj));
        }
        if(bIncEmpty||et.getUpdateDate()!=null) {
            Object obj = et.getUpdateDate();
            node.setAttribute("UPDATEDATE",(obj==null)?"":StringHelper.format("%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS",obj));
        }
        if(bIncEmpty||et.getUpdateMan()!=null) {
            Object obj = et.getUpdateMan();
            node.setAttribute("UPDATEMAN",(obj==null)?"":(String)obj);
        }


    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.entity.EntityBase#onCopyTo(net.ibizsys.paas.data.IDataObject, boolean)
     */
    @Override
    protected void onCopyTo(IDataObject dataEntity, boolean bIncludeEmtpy) throws Exception {
        IBZ5ORDERDETAIL.copyTo(this,dataEntity,bIncludeEmtpy);
        super.onCopyTo(dataEntity,bIncludeEmtpy);
    }

    /**
     * 复制当前对象数据到目标对象
     * @param et 当前数据对象
     * @param dst 目标数据对象
     * @param bIncEmpty 是否包括空值
     * @throws Exception
     */
    private static void copyTo(IBZ5ORDERDETAIL et,IDataObject dst,boolean bIncEmpty) throws Exception {
        if(et.isAmountDirty() && (bIncEmpty||et.getAmount()!=null)) {
            dst.set(FIELD_AMOUNT,et.getAmount());
        }
        if(et.isCreateDateDirty() && (bIncEmpty||et.getCreateDate()!=null)) {
            dst.set(FIELD_CREATEDATE,et.getCreateDate());
        }
        if(et.isCreateManDirty() && (bIncEmpty||et.getCreateMan()!=null)) {
            dst.set(FIELD_CREATEMAN,et.getCreateMan());
        }
        if(et.isIBZ5ORDERDETAILIdDirty() && (bIncEmpty||et.getIBZ5ORDERDETAILId()!=null)) {
            dst.set(FIELD_IBZ5ORDERDETAILID,et.getIBZ5ORDERDETAILId());
        }
        if(et.isIBZ5ORDERDETAILNameDirty() && (bIncEmpty||et.getIBZ5ORDERDETAILName()!=null)) {
            dst.set(FIELD_IBZ5ORDERDETAILNAME,et.getIBZ5ORDERDETAILName());
        }
        if(et.isIBZ5ORDERIdDirty() && (bIncEmpty||et.getIBZ5ORDERId()!=null)) {
            dst.set(FIELD_IBZ5ORDERID,et.getIBZ5ORDERId());
        }
        if(et.isIBZ5ORDERNameDirty() && (bIncEmpty||et.getIBZ5ORDERName()!=null)) {
            dst.set(FIELD_IBZ5ORDERNAME,et.getIBZ5ORDERName());
        }
        if(et.isIBZ5UNITPRODUCTIdDirty() && (bIncEmpty||et.getIBZ5UNITPRODUCTId()!=null)) {
            dst.set(FIELD_IBZ5UNITPRODUCTID,et.getIBZ5UNITPRODUCTId());
        }
        if(et.isIBZ5UNITPRODUCTNameDirty() && (bIncEmpty||et.getIBZ5UNITPRODUCTName()!=null)) {
            dst.set(FIELD_IBZ5UNITPRODUCTNAME,et.getIBZ5UNITPRODUCTName());
        }
        if(et.isORDERUIDDirty() && (bIncEmpty||et.getORDERUID()!=null)) {
            dst.set(FIELD_ORDERUID,et.getORDERUID());
        }
        if(et.isQUANTITYDirty() && (bIncEmpty||et.getQUANTITY()!=null)) {
            dst.set(FIELD_QUANTITY,et.getQUANTITY());
        }
        if(et.isUNITDirty() && (bIncEmpty||et.getUNIT()!=null)) {
            dst.set(FIELD_UNIT,et.getUNIT());
        }
        if(et.isUnitPriceDirty() && (bIncEmpty||et.getUnitPrice()!=null)) {
            dst.set(FIELD_UNITPRICE,et.getUnitPrice());
        }
        if(et.isUpdateDateDirty() && (bIncEmpty||et.getUpdateDate()!=null)) {
            dst.set(FIELD_UPDATEDATE,et.getUpdateDate());
        }
        if(et.isUpdateManDirty() && (bIncEmpty||et.getUpdateMan()!=null)) {
            dst.set(FIELD_UPDATEMAN,et.getUpdateMan());
        }
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#remove(java.lang.String)
     */
    @Override
    public boolean remove(String strParamName) throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().remove(strParamName);
        }

        if(StringHelper.isNullOrEmpty(strParamName))
            throw new Exception("没有指定属性");
        Integer index=fieldIndexMap.get(strParamName.toUpperCase());
        if(index==null)
            return super.remove(strParamName);
        return  IBZ5ORDERDETAIL.remove(this, index);
    }

    /**
     * 通过属性标识删除属性值
     * @param entity
     * @param index
     * @return
     * @throws Exception
     */
    private static boolean remove(IBZ5ORDERDETAIL et,int index) throws Exception {
        switch(index) {
        case INDEX_AMOUNT:
            et.resetAmount();
            return true;
        case INDEX_CREATEDATE:
            et.resetCreateDate();
            return true;
        case INDEX_CREATEMAN:
            et.resetCreateMan();
            return true;
        case INDEX_IBZ5ORDERDETAILID:
            et.resetIBZ5ORDERDETAILId();
            return true;
        case INDEX_IBZ5ORDERDETAILNAME:
            et.resetIBZ5ORDERDETAILName();
            return true;
        case INDEX_IBZ5ORDERID:
            et.resetIBZ5ORDERId();
            return true;
        case INDEX_IBZ5ORDERNAME:
            et.resetIBZ5ORDERName();
            return true;
        case INDEX_IBZ5UNITPRODUCTID:
            et.resetIBZ5UNITPRODUCTId();
            return true;
        case INDEX_IBZ5UNITPRODUCTNAME:
            et.resetIBZ5UNITPRODUCTName();
            return true;
        case INDEX_ORDERUID:
            et.resetORDERUID();
            return true;
        case INDEX_QUANTITY:
            et.resetQUANTITY();
            return true;
        case INDEX_UNIT:
            et.resetUNIT();
            return true;
        case INDEX_UNITPRICE:
            et.resetUnitPrice();
            return true;
        case INDEX_UPDATEDATE:
            et.resetUpdateDate();
            return true;
        case INDEX_UPDATEMAN:
            et.resetUpdateMan();
            return true;
        default:
            throw new Exception("不明属性标识");
        }
    }


    private Object objIBZ5ORDERLock = new Object();
    private com.sa.ibiz.demo.srv.demo.entity.IBZ5ORDER ibz5order = null;
    /**
    * 获取父数据 订单
     * @throws Exception
    */
    public com.sa.ibiz.demo.srv.demo.entity.IBZ5ORDER getIBZ5ORDER() throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5ORDER();
        }

        if(this.getIBZ5ORDERId()==null)
            return null;
        synchronized(objIBZ5ORDERLock) {
            if(ibz5order==null) {
                ibz5order = new com.sa.ibiz.demo.srv.demo.entity.IBZ5ORDER();
                ibz5order.setIBZ5ORDERId(this.getIBZ5ORDERId());
                com.sa.ibiz.demo.srv.demo.service.IBZ5ORDERService service = (com.sa.ibiz.demo.srv.demo.service.IBZ5ORDERService)ServiceGlobal.getService(com.sa.ibiz.demo.srv.demo.service.IBZ5ORDERService.class,this.getSessionFactory());
                if(this.getIBZ5ORDERId().indexOf(net.ibizsys.paas.service.ServiceBase.TEMPKEY) == 0)
                    service.getTemp(ibz5order);
                else
                    service.get(ibz5order);
            }
            return ibz5order;
        }
    }

    private Object objIBZ5UNITPRODUCTLock = new Object();
    private com.sa.ibiz.demo.srv.demo.entity.IBZ5UNITPRODUCT ibz5unitproduct = null;
    /**
    * 获取父数据 统一产品（索引主实体）
     * @throws Exception
    */
    public com.sa.ibiz.demo.srv.demo.entity.IBZ5UNITPRODUCT getIBZ5UNITPRODUCT() throws Exception {
        if(this.getProxyEntity()!=null) {
            return this.getProxyEntity().getIBZ5UNITPRODUCT();
        }

        if(this.getIBZ5UNITPRODUCTId()==null)
            return null;
        synchronized(objIBZ5UNITPRODUCTLock) {
            if(ibz5unitproduct==null) {
                ibz5unitproduct = new com.sa.ibiz.demo.srv.demo.entity.IBZ5UNITPRODUCT();
                ibz5unitproduct.setIBZ5UNITPRODUCTId(this.getIBZ5UNITPRODUCTId());
                com.sa.ibiz.demo.srv.demo.service.IBZ5UNITPRODUCTService service = (com.sa.ibiz.demo.srv.demo.service.IBZ5UNITPRODUCTService)ServiceGlobal.getService(com.sa.ibiz.demo.srv.demo.service.IBZ5UNITPRODUCTService.class,this.getSessionFactory());
                if(this.getIBZ5UNITPRODUCTId().indexOf(net.ibizsys.paas.service.ServiceBase.TEMPKEY) == 0)
                    service.getTemp(ibz5unitproduct);
                else
                    service.get(ibz5unitproduct);
            }
            return ibz5unitproduct;
        }
    }





    /**
     *  获取代理的数据对象
     */
    private IBZ5ORDERDETAIL getProxyEntity() {
        return this.proxyIBZ5ORDERDETAIL;
    }

    /* (non-Javadoc)
     * @see net.ibizsys.paas.data.DataObject#onProxy(net.ibizsys.paas.data.IDataObject)
     */
    @Override
    protected void onProxy(IDataObject proxyDataObject) {
        this.proxyIBZ5ORDERDETAIL = null;
        if(proxyDataObject!=null && proxyDataObject instanceof IBZ5ORDERDETAIL) {
            this.proxyIBZ5ORDERDETAIL = (IBZ5ORDERDETAIL)proxyDataObject;
        }

    }

}